package org.csmzxy.class2333;
import java.util.Scanner;
public class Test4 {
    //输入两个数，分别输出最大公约数和最小公倍数
    //欧几里得算法
    /*Python代码
    def gcd(a, b):
    while b:
        a, b = b, a % b
    return abs(a)
     */
    public static int gcd(int a,int b){//a,b=b,a%b(python代码转换)
        while(b!=0){
            int cun=b;
            b=a%b;
            a=cun;
        }
        return a;
    }
    public static void main(String[] args){
        Scanner scanner = new Scanner(System.in);
        int a=scanner.nextInt(); //输入a
        int b=scanner.nextInt();//输入b
        System.out.println(gcd(a,b));//最大公因数（欧几里得算法）
        System.out.println(a*b/gcd(a,b));//最小公倍数=两数相乘除以最大公因数
    }
}
